home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1995 November / EnigmA AMIGA RUN 02 (1995)(G.R. Edizioni)(IT)[!][issue 1995-11][Skylink CD].iso / earcd / ead / ead07.dms / ead07.adf / AmigaBasicProgs / Lander < prev    next >
Text File  |  1988-07-17  |  15KB  |  459 lines

  1.  
  2. mode%=1     'mode%=1 production, mode%=0 for debug
  3. 'Lunar Lander Game Program
  4. 'By: Brian Allston 3/20/86
  5. '
  6. start:
  7.    PRINT "Lunar Lander Game"
  8.    PRINT "Amiga BASIC version by:"
  9.    PRINT "Brian Allston      3/20/86"
  10.    PRINT " "
  11.    PRINT " "
  12.    PRINT " "
  13.    a$="Alza il volume per i suoni":LOCATE 8,40-CINT(LEN(a$)/2):PRINT a$
  14.    DIM moonscape.h%(641)
  15.    SAY ""
  16.    RANDOMIZE TIMER
  17.    GOSUB initscreen 
  18.    WIDTH 80
  19.    CLS
  20.    FOR i=1 TO 22
  21.       LOCATE i,i*2+10:PRINT"Lunar Lander"
  22.    NEXT i
  23.    IF mode%=0 THEN mode%=5
  24.    MENU mode%,0,1,"Opzioni"
  25.    MENU mode%,1,1,"Start Mission"
  26.    MENU mode%,2,1,"Quit         "
  27.    MENU mode%,3,1,"Help         "
  28.    IF mode%<>1 THEN GOTO dmsave   
  29.    MENU 2,0,0,""         'disable default menus
  30.    MENU 3,0,0,""
  31.    MENU 4,0,0,""
  32.    dmsave:
  33.    RESTORE moonscape
  34.    FOR i=1 TO 640
  35.       READ moonscape.h%(i)          'Input horizon definition
  36.    NEXT i
  37.    CLS  
  38.    speech$="Benvenuto a Lunar Lander."
  39.    LOCATE 6,40-CINT(LEN(speech$)/2):PRINT speech$
  40.    SAY "BEHNVEHNUWTAO AA LUWNAAER LAANDEHER"    
  41.    speech$="L'oggetto della tua missione e' di fare ":'un perfetto atterraggio nella tua base." 
  42.    LOCATE 12,40-CINT(LEN(speech$)/2):PRINT speech$
  43.    speech$="un perfetto atterraggio sulla tua base"
  44.    LOCATE 13,40-CINT(LEN(speech$)/2):PRINT speech$
  45.    SAY "LAOGJEHTTAO DEHLLAA TUWAA MIYSSIYAONEH EH DIY FAAEREH UWN PEHERFEHTTAO AATTEHERERAAGJAO SUWLLAA TUWAA BAASEH"  
  46.    RESTORE lander
  47.    ship$=""
  48.    FOR i=1 TO 62
  49.       READ ship.data%
  50.       ship$=ship$+CHR$(ship.data%)
  51.    NEXT i
  52.    speech$="Devi atterrare velocemente,dolcemente,":'usando meno carburante possibile."
  53.    LOCATE 18,40-CINT(LEN(speech$)/2):PRINT speech$
  54.    speech$="usando meno carburante possibile"
  55.    LOCATE 19,40-CINT(LEN(speech$)/2):PRINT speech$
  56.    SAY "DEHVIY AATTEHERERAAEREH VEHLAOCHEHMEHNTEH DAOLCHEHMEHNTEH UWSAANDAO MEHNAO KAAERBUWERAANTEH PAOSSIYBIYLEH"
  57.    speech$="Usa il menu' pull-down per partire."
  58.    COLOR 1,2:LOCATE 22,40-CINT(LEN(speech$)/2):PRINT speech$;:COLOR 1,0
  59.     fg$="UWSAA IYL MEHNUW PPUWLL DDAAUWN PEHER PAAERTIYEREREH"
  60.    SAY (fg$)
  61.    menucheck:
  62.       MENU ON
  63.       ON MENU GOSUB getoption
  64.       SLEEP      
  65.       GOTO menucheck
  66.    getoption:
  67.       OBJECT.OFF
  68.       IF MENU(0) <> mode% THEN GOTO nomenu     
  69.       moption%=MENU(1)
  70.       MENU OFF
  71.       IF moption%=0 THEN GOTO getoption
  72.       ON MENU GOSUB 0
  73.       ON moption%+1 GOTO nomenu,main,exit1,showhelp
  74.       nomenu:
  75.       RETURN
  76.    showhelp:
  77.       CLS
  78.       WINDOW 3,"Mission Objective",(20,20)-(600,130),0,1
  79.       WINDOW OUTPUT 3
  80.       LOCATE 1,1:COLOR 1,0
  81.       PRINT ""
  82.       PRINT ""
  83.       PRINT ""
  84.       PRINT "   La tua missione consiste nel pilotare la navicella per atterrare "
  85.       PRINT "   dolcemente nella base lunare. Usa i controlli sul pannello per"
  86.       PRINT "   pilotare la navicella con il pulsante sinistro del mouse. "
  87.       PRINT "   Il punteggio e' determinato dalla velocita',dalla distanza dalla "
  88.       PRINT "   base,dal carburante usato e dal tempo impiegato."
  89.       PRINT ""
  90.       PRINT "   Buona Fortuna!                Brian Allston (76515,1506)"
  91.       PRINT ""
  92.       PRINT ""
  93.       COLOR 1,2:LOCATE 13,15:PRINT "Premi il pulsante sinistro del mouse per continuare.";:COLOR 1,0
  94.       keepopen:
  95.          IF MOUSE(0)=0 THEN GOTO keepopen
  96.       WINDOW OUTPUT 2   
  97.       WINDOW CLOSE 3
  98.       RETURN   
  99.    main:
  100.       GOSUB drawscreen        
  101.       GOSUB initlander
  102.       GOSUB updatedisplay
  103.       ON TIMER(.25) GOSUB updatevalues:TIMER ON
  104.       '
  105.       'Loop until lander touches the horizon
  106.       WHILE y&<horizon%
  107.          x&=OBJECT.X(1)
  108.          IF x&<6 OR x&>620 THEN
  109.             IF edgecheck<6 THEN 
  110.             border=-2
  111.             ELSE
  112.                border=-4
  113.             END IF
  114.             GOSUB edge
  115.          x&=OBJECT.X(1)
  116.          END IF
  117.          horizon%=moonscape.h%(x&)
  118.          y&=OBJECT.Y(1)+8
  119.          GOSUB updatedisplay
  120.      WEND
  121. '
  122. '   
  123. TIMER OFF
  124. 'Check for crash and compute score
  125. OBJECT.STOP 1
  126. computescore:
  127.    vterm=SQR(vx*vx+vy*vy)
  128.    xterm=ABS(basex-x&):IF xterm>305 THEN xterm=xterm-305
  129.    yterm=y-8
  130.    IF vterm>vcrash THEN 
  131.       IF OBJECT.Y(1)>150 THEN OBJECT.Y 1,140
  132.       FOR t=1 TO 100:b$=" ":NEXT t
  133.       FOR t=1 TO 2
  134.       FOR n=400 TO 100 STEP -25
  135.       SOUND n,1
  136.       NEXT
  137.       NEXT
  138.       FOR t=1 TO 1000:NEXT t :PRINT "";
  139.  
  140.       yterm=OBJECT.Y(1)+8
  141.       xterm=OBJECT.X(1)+5
  142.       LINE (xterm,yterm)-(xterm-50,yterm-45),3
  143.       LINE (xterm,yterm)-(xterm+50,yterm-50),6
  144.       LINE (xterm,yterm)-(xterm-25,yterm-10),6
  145.       LINE (xterm,yterm)-(xterm+50,yterm-35),7
  146.       LINE (xterm,yterm)-(xterm-10,yterm-60),7
  147.       LINE (xterm,yterm)-(xterm+60,yterm-10),3
  148.       LINE (xterm,yterm)-(xterm-40,yterm-5),3
  149.       LINE (xterm,yterm)-(xterm+20,yterm-30),6
  150.       score&=0
  151.       
  152.       landing$="Sei Esploso!  Nessun sopravvissuto."
  153.       LOCATE 8,40-CINT(LEN(landing$)/2):PRINT landing$
  154.       SAY ""
  155.       SAY "SEHIY EHSPLAOSAO  NEHSSUWN SAOPERERAAVVIYSSUWTTAO "
  156.       GOTO displayscore
  157.    END IF
  158.    landing$="Hai fatto un "
  159.    landing1$="AAIY FAATTAO UWN "
  160.    IF vterm>vcrash/2 THEN
  161.       landing$=landing$+"duro "
  162.       landing1$=landing1$+"DUWERAO "
  163.    ELSEIF vterm>vcrash/4 THEN
  164.       landing$=landing$+"dolce "
  165.       landing1$=landing1$+"DAOLCHEH "
  166.    ELSE
  167.       landing$=landing$+"perfetto "
  168.       landing1$=landing1$+"PEHERFEHTTAO "    
  169.    END IF
  170.    score1=score&   
  171.    landing$=landing$+"atterraggio, "
  172.    landing1$=landing1$+"AATTEHERERAAGJAO "
  173.    IF xterm>100 THEN
  174.       landing$=landing$+"lontano dalla base."
  175.       landing1$=landing1$+"LAONTAANAO DAALLAA BAASEH "
  176.    ELSEIF xterm>20 THEN
  177.       landing$=landing$+"vicino alla base."
  178.       landing1$=landing1$+"VIYCHIYNAO AALLAA BAASEH "
  179.    ELSE
  180.       landing$=landing$+"sulla base. Congratulazioni!"
  181.       landing1$=landing1$+"SUWLLAA BAASEH. KAONGERAATUWLAATZIYAONIY "
  182.    END IF
  183.    score1%=CINT(10*(1-vterm/vcrash))+1
  184.    score2%=CINT(15*(1-xterm/310))+1
  185.    score3%=CINT(5*fuel/ifuel)+1
  186.    score4%=CINT(5/etime)+1
  187.    score&=score1%*score2%*score3%*score4%
  188.    displayscore:
  189.       COLOR 1,0       
  190.       LOCATE 8,40-CINT(LEN(landing$)/2):PRINT landing$                  
  191.       
  192.       SAY (landing1$)
  193.       LOCATE 11,30:PRINT USING "Your score is: #####";score&
  194.    RETURN      
  195. '
  196. 'Update lander velocity based upon "thrusters"    
  197. updatevalues:
  198.    etime=etime+(1/120)
  199.    vy=vy+gravity
  200.    IF fuel=0 THEN GOTO noaccel
  201.    mousestat%=MOUSE(0)
  202.       mx=MOUSE(1):my=MOUSE(2)
  203.       IF mousestat%=0 THEN
  204.       IF oldthrust%<>0 THEN GOSUB clearthrust
  205.       GOTO noaccel
  206.       END IF
  207.    mousecheck:
  208.       IF mx>=296 AND mx<=325 THEN
  209.          IF my>=157 AND my<=170 THEN thrust%=1:vy=vy-2
  210.          IF my>=173 AND my<=186 THEN thrust%=2:vy=vy+2
  211.       ELSEIF my>=164 AND my<=177 THEN
  212.          IF mx>=260 AND mx<=290 THEN thrust%=3:vx=vx-6
  213.          IF mx>=331 AND mx<=361 THEN thrust%=4:vx=vx+6
  214.       END IF
  215.       IF oldthrust%<>thrust% THEN GOSUB clearthrust
  216.       IF thrust%=0 THEN GOTO noaccel
  217.    showthrust:     
  218.       COLOR 1,6
  219.       IF thrust%=1 THEN LINE (297,158)-(324,169),6,bf:LOCATE 21,39:PRINT "UP";
  220.       IF thrust%=2 THEN LINE (297,174)-(324,185),6,bf:LOCATE 23,39:PRINT "DN";
  221.       IF thrust%=3 THEN LINE (261,165)-(289,176),6,bf:LOCATE 22,34:PRINT "<-";
  222.       IF thrust%=4 THEN LINE (332,165)-(360,176),6,bf:LOCATE 22,43:PRINT "->";
  223.       oldthrust%=thrust%
  224.       COLOR 1,0          
  225.    updatefuel:
  226.       fuel=fuel-8.3
  227.       IF fuel<0 THEN fuel=0
  228.       GOTO noaccel
  229.    clearthrust:
  230.       IF oldthrust%=0 THEN RETURN
  231.       COLOR 1,0
  232.       IF oldthrust%=1 THEN LINE (297,158)-(324,169),0,bf:LOCATE 21,39:PRINT "UP";
  233.       IF oldthrust%=2 THEN LINE (297,174)-(324,185),0,bf:LOCATE 23,39:PRINT "DN";
  234.       IF oldthrust%=3 THEN LINE (261,165)-(289,176),0,bf:LOCATE 22,34:PRINT "<-";
  235.       IF oldthrust%=4 THEN LINE (332,165)-(360,176),0,bf:LOCATE 22,43:PRINT "->";
  236.       oldthrust%=thrust%
  237.       RETURN
  238.    noaccel:
  239.       OBJECT.VX 1,vx
  240.       OBJECT.VY 1,vy
  241.       OBJECT.START 1
  242.       thrust%=0:mousestat%=0  
  243.    RETURN    
  244. '
  245. 'Let lander "wrap-around" the left and right borders
  246. wraparound:
  247.    border=COLLISION(1)
  248. edge:   
  249.    IF border=-1 THEN OBJECT.Y 1,1:GOTO restart
  250.    IF border=-3 THEN OBJECT.STOP 1:RETURN
  251.    IF border=-2 THEN OBJECT.X 1,619:GOTO restart
  252.    IF border=-4 THEN OBJECT.X 1,6
  253.    restart:
  254.       OBJECT.START 1
  255.    RETURN
  256. '
  257. 'Update Display Values
  258. updatedisplay:
  259.    TIMER STOP
  260.    COLOR 1,2
  261.    LOCATE 21,3:PRINT USING " ####.#";vy*(-17.6);
  262.    LOCATE 23,3:PRINT USING " ####.#";vx*5.5;
  263.    LOCATE 21,69:PRINT USING " ####.#";(horizon%-y&)*17.6;
  264.    LOCATE 23,69:PRINT USING " ####.#";fuel;
  265.    COLOR 1,0
  266.    TIMER ON
  267.    RETURN
  268. '
  269. 'Initialize lander position, velocity, and fuel terms
  270. initlander:
  271.    gravity=.5
  272.    ifuel=400:fuel=ifuel
  273.    x&=CINT(RND*610)+5
  274.    y&=1
  275.    vx=12
  276.    IF RND<.5 THEN vx=vx*(-1)
  277.    vy=2
  278.    vcrash=20
  279.    OBJECT.SHAPE 1,ship$
  280.    OBJECT.X 1,x&   
  281.    OBJECT.Y 1,y&             
  282.    OBJECT.VX 1,vx
  283.    OBJECT.VY 1,vy
  284.    OBJECT.ON 1
  285.    OBJECT.START 1
  286.    ON COLLISION GOSUB wraparound
  287.    horizon%=moonscape.h%(x&)
  288.    COLLISION ON
  289.    RETURN
  290. '
  291. 'Initialize window and game display
  292. initscreen:
  293.    SCREEN 1,640,200,3,2          'Define window parameters
  294.    WINDOW 2,"Lunar Lander",,8,1
  295.    PALETTE 4,.8,.6,.53           'tan     --
  296.    PALETTE 5,.33,.87,0           'green     | _Additional
  297.    PALETTE 6,1,0,0               'red       |  Colors
  298.    PALETTE 7 ,1,1,.13            'yellow  --
  299.    RETURN
  300. '
  301. drawscreen:
  302.    COLOR 1,3                     'Draw flight display window
  303.    LINE (0,0)-(640,200),3,bf
  304.    LINE (5,0)-(625,150),2,bf     
  305.    FOR i=1 TO 50                 'Draw stars
  306.       x=INT(RND*620)+5
  307.       y=INT(RND*150)
  308.       PSET(x,y),1
  309.    NEXT i
  310.    CIRCLE (580,50),75,0        'draw ringed planet
  311.    LINE (5,0)-(625,150),0,b     
  312.    CIRCLE (580,50),85,0,2.6,6,1/12              
  313.    CIRCLE (580,50),110,0,2.25,6,1/12
  314.    CIRCLE (580,50),150,0,2.05,6,1/12
  315.    PAINT (494,50),7,0
  316.    PAINT (580,58),7,0
  317.    PAINT (465,50),6,0
  318.    PAINT (580,60),6,0
  319.    PAINT (580,50),0
  320.    PAINT (580,70),0
  321.    CIRCLE (580,50),85,2,2.65,6,1/12              
  322.    CIRCLE (580,50),110,2,2.3,6,1/12
  323.    CIRCLE (580,50),150,2,2.08,6,1/12
  324.    '
  325.    LINE (625,0)-(640,150),3,bf  'draw horizon
  326.    LINE (625,150)-(5,150),4
  327.    LINE (5,150)-(5,126),4
  328.    LINE (5,126)-(25,138),4
  329.    LINE (25,138)-(60,138),4
  330.    LINE (60,138)-(70,144),4
  331.    LINE (70,144)-(80,144),4
  332.    LINE (80,144)-(120,120),4
  333.    LINE (120,120)-(140,100),4
  334.    LINE (140,100)-(360,130),4
  335.    LINE (360,130)-(500,130),4
  336.    LINE (500,130)-(550,145),4
  337.    LINE (550,145)-(625,136),4
  338.    LINE (625,136)-(625,150),4
  339.    PAINT (6,148),4                'paint moonscape
  340.    'CIRCLE (20,140),7,2,1/25
  341.    'CIRCLE (130,130),15,2,1/25
  342.    LINE (5,0)-(625,150),2,b       'cover planet edge
  343.    '
  344.    basex=CINT(RND*600)+5               'randomly position base
  345.    basey=moonscape.h%(basex)
  346.    LINE (basex,basey)-STEP(15,6),6,bf
  347.    LINE (basex+1,basey-20)-STEP(13,22),2,bf
  348.    ' 
  349.    COLOR 1,3:           'Draw Instrument Panel
  350.    LOCATE 20,3:PRINT "V-SPEED";
  351.    LOCATE 22,3:PRINT "H-SPEED";
  352.    LOCATE 20,69:PRINT "Altitude";
  353.    LOCATE 22,69:PRINT "  Fuel ";
  354.    LINE (10,160)-(80,167),2,bf
  355.    LINE (10,176)-(80,184),2,bf
  356.    LINE (540,160)-(610,167),2,bf
  357.    LINE (540,176)-(610,184),2,bf
  358.    LINE (296,157)-(325,170),0,bf
  359.    LINE (296,173)-(325,186),0,bf
  360.    LINE (260,164)-(290,177),0,bf
  361.    LINE (331,164)-(361,177),0,bf
  362.    COLOR 1,0
  363.    LOCATE 21,39:PRINT "UP";
  364.    LOCATE 22,34:PRINT "<-";
  365.    LOCATE 22,43:PRINT "->";
  366.    LOCATE 23,39:PRINT "DN";
  367.    LINE (296,157)-(325,170),2,b
  368.    LINE (296,173)-(325,186),2,b
  369.    LINE (260,164)-(290,177),2,b
  370.    LINE (331,164)-(361,177),2,b
  371.    RETURN
  372. '
  373. 'End of program clean-up
  374. exit1:
  375.    TIMER OFF
  376.    COLLISION OFF
  377.    WINDOW CLOSE 1
  378.    MENU OFF
  379.    MENU RESET
  380.    OBJECT.OFF
  381.    SYSTEM
  382. '
  383. moonscape:                
  384. DATA 126, 126, 126, 126, 126, 127, 127, 128, 128, 129
  385. DATA 130, 130, 131, 131, 132, 133, 133, 134, 134, 135
  386. DATA 136, 136, 137, 137, 138, 138, 138, 138, 138, 138
  387. DATA 138, 138, 138, 138, 138, 138, 138, 138, 138, 138
  388. DATA 138, 138, 138, 138, 138, 138, 138, 138, 138, 138
  389. DATA 138, 138, 138, 138, 138, 138, 138, 138, 138, 138
  390. DATA 139, 139, 140, 140, 141, 142, 142, 143, 143, 144
  391. DATA 144, 144, 144, 144, 144, 144, 144, 144, 144, 144
  392. DATA 143, 143, 142, 142, 141, 140, 140, 139, 139, 138
  393. DATA 137, 137, 136, 136, 135, 134, 134, 133, 133, 132
  394. DATA 131, 131, 130, 130, 129, 128, 128, 127, 127, 126
  395. DATA 125, 125, 124, 124, 123, 122, 122, 121, 121, 120
  396. DATA 119, 118, 117, 116, 115, 114, 113, 112, 111, 110
  397. DATA 109, 108, 107, 106, 105, 104, 103, 102, 101, 100
  398. DATA 100, 100, 100, 101, 101, 101, 101, 101, 101, 101
  399. DATA 102, 102, 102, 102, 102, 102, 102, 102, 103, 103
  400. DATA 103, 103, 103, 103, 103, 104, 104, 104, 104, 104
  401. DATA 104, 104, 105, 105, 105, 105, 105, 105, 105, 105
  402. DATA 106, 106, 106, 106, 106, 106, 106, 107, 107, 107
  403. DATA 107, 107, 107, 107, 108, 108, 108, 108, 108, 108
  404. DATA 108, 108, 109, 109, 109, 109, 109, 109, 109, 110
  405. DATA 110, 110, 110, 110, 110, 110, 111, 111, 111, 111
  406. DATA 111, 111, 111, 111, 112, 112, 112, 112, 112, 112
  407. DATA 112, 113, 113, 113, 113, 113, 113, 113, 114, 114
  408. DATA 114, 114, 114, 114, 114, 114, 115, 115, 115, 115
  409. DATA 115, 115, 115, 116, 116, 116, 116, 116, 116, 116
  410. DATA 116, 117, 117, 117, 117, 117, 117, 117, 118, 118
  411. DATA 118, 118, 118, 118, 118, 119, 119, 119, 119, 119
  412. DATA 119, 119, 119, 120, 120, 120, 120, 120, 120, 120
  413. DATA 121, 121, 121, 121, 121, 121, 121, 122, 122, 122
  414. DATA 122, 122, 122, 122, 122, 123, 123, 123, 123, 123
  415. DATA 123, 123, 124, 124, 124, 124, 124, 124, 124, 125
  416. DATA 125, 125, 125, 125, 125, 125, 125, 126, 126, 126
  417. DATA 126, 126, 126, 126, 127, 127, 127, 127, 127, 127
  418. DATA 127, 128, 128, 128, 128, 128, 128, 128, 128, 129
  419. DATA 129, 129, 129, 129, 129, 129, 130, 130, 130, 130
  420. DATA 130, 130, 130, 130, 130, 130, 130, 130, 130, 130
  421. DATA 130, 130, 130, 130, 130, 130, 130, 130, 130, 130
  422. DATA 130, 130, 130, 130, 130, 130, 130, 130, 130, 130
  423. DATA 130, 130, 130, 130, 130, 130, 130, 130, 130, 130
  424. DATA 130, 130, 130, 130, 130, 130, 130, 130, 130, 130
  425. DATA 130, 130, 130, 130, 130, 130, 130, 130, 130, 130
  426. DATA 130, 130, 130, 130, 130, 130, 130, 130, 130, 130
  427. DATA 130, 130, 130, 130, 130, 130, 130, 130, 130, 130
  428. DATA 130, 130, 130, 130, 130, 130, 130, 130, 130, 130
  429. DATA 130, 130, 130, 130, 130, 130, 130, 130, 130, 130
  430. DATA 130, 130, 130, 130, 130, 130, 130, 130, 130, 130
  431. DATA 130, 130, 130, 130, 130, 130, 130, 130, 130, 130
  432. DATA 130, 130, 130, 130, 130, 130, 130, 130, 130, 130
  433. DATA 130, 130, 130, 130, 130, 130, 130, 130, 130, 130
  434. DATA 130, 131, 131, 131, 132, 132, 132, 132, 133, 133
  435. DATA 133, 134, 134, 134, 134, 135, 135, 135, 136, 136
  436. DATA 136, 137, 137, 137, 138, 138, 138, 138, 139, 139
  437. DATA 139, 140, 140, 140, 140, 141, 141, 141, 142, 142
  438. DATA 142, 143, 143, 143, 144, 144, 144, 144, 145, 145
  439. DATA 145, 145, 144, 144, 144, 143, 143, 143, 143, 142
  440. DATA 142, 142, 142, 141, 141, 141, 141, 140, 140, 140
  441. DATA 140, 139, 139, 139, 139, 138, 138, 138, 138, 137
  442. DATA 137, 137, 137, 136, 136, 136, 136, 135, 135, 135
  443. DATA 135, 134, 134, 134, 134, 133, 133, 133, 133, 132
  444. DATA 132, 132, 132, 131, 131, 131, 131, 130, 130, 130
  445. DATA 130, 129, 129, 129, 129, 128, 128, 128, 128, 127
  446. DATA 127, 127, 127, 126, 126, 126, 126, 126, 126, 126
  447. DATA 126, 126, 126, 126, 126, 126, 126, 126, 126, 126
  448. '
  449. lander:
  450. DATA   0,   0,   0,   0,   0,   0,   0,   0,   0,   0
  451. DATA   0,   2,   0,   0,   0,  11,   0,   0,   0,   9
  452. DATA   0,  24,   0,   3,   0,   0,   4,   0,  14,   0
  453. DATA  10,   0,  10,   0,  10,   0,  31,   0,  31,   0
  454. DATA  63, 128,  64,  64,   0,   0,   0,   0,   4,   0
  455. DATA   4,   0,   4,   0,  14,   0,  14,   0,   0,   0
  456. DATA   0,   0
  457. '
  458. END
  459.